Custom electronic learning system and method

ABSTRACT

A system and method for generating a custom learning object. The system and method generate the custom learning object based on a knowledge object and a set of user characteristics for a user. In one embodiment, the knowledge object is converted to a set of knowledge atoms. Each knowledge atom is then mapped to a container defining an output format. One or more containers are combined to define the custom learning object.

REFERENCE TO PRIOR APPLICATION

The current application claims priority to co-pending provisionalapplication Ser. No. 60/322,054, filed on Sep. 14, 2001 and incorporatedherein by reference.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention generally relates to a method and system forconverting an electronic data object into a custom electronic learningobject. More particularly, the present invention relates to thetranslation of one or more electronic data objects (e.g., documents,streaming video, etc.) into one or more custom learning objects thatenable customized (personalized) courses and training that can beprovided over a computer network.

2. Background Art

Computers have become pervasive in all aspects of business and educationlargely because of their ability to quickly and flawlessly store andretrieve information. The ability to network computers further eased thedissemination of information to individuals, limited groups of people,and/or large audiences. Networks include both private networks, such asone-to-one connection, computers within an office or company, virtualprivate networks (VPNs), etc. and public networks, such as local areanetworks (LANs), wide area networks (WANs), the Internet, etc., andcombinations of public and private networks.

The unique capabilities of computers and computer networks, in contrastto paper documents, allow users to retrieve, store, and interact withinformation in many new and useful ways that are beneficial toemployers. As a result, the field of Information Technology (IT) rapidlyexpanded into the public and private sectors. This created a new andsubstantial challenge for employers: finding, training, and retainingskilled IT workers (“IT specialists”) to install, manage, and supportthe IT needs of the employer. Some employers have encounteredsubstantial problems in hiring IT specialists, and have opted to retrainworkers with non-IT backgrounds. However, this approach quickly becomesa large cost for employers. As businesses, governments, not-for-profits,educational, and healthcare institutions become increasingly dependenton IT, the challenge to employ IT specialists grows. However, ITspecialist staffing problems is only the tip of the proverbial iceberg.

Another challenge, parallel to IT specialist staffing but perhaps moresubtle, is an employer's need to find, train, and retain skilled workersto use IT to perform the “business” of the employer (“IT users”). ITusers, and the jobs they perform, are the fundamental reason that thereis such a growing dependency on IT. IT users far outnumber ITspecialists for most employers, and are the workers that create goods orperform services on behalf of the employer. Therefore, an employer canincur substantial costs, both in terms of efficiency and customersatisfaction, when IT users are not properly trained on using IT. Forexample, an employer's new database server may be superbly maintained byhighly skilled IT specialists. The server and software can be thefastest available with the most sophisticated analytical tools. However,if the employees in accounting or marketing (i.e., IT users) don't knowhow to perform queries, then these resources are wasted.

Prior to the rise of IT, printed manuals provided the most common sourcefor learning. Today, many manuals available over networks are merelycomputerized versions of the old printed manuals. While some helpfulcapabilities such as hyperlinks are often included, the full potentialof the media remains underutilized. Further, additional information,including anecdotes and procedures scattered around an organization, areincreasingly recognized as part of an employer's intellectual capital.Companies are beginning to understand the need to make this informationavailable to employees in a more organized and accessible manner.

Technology changes at a rapid pace, and employees do not produce anybenefit to an employer while being trained on the latest release.Consequently, knowledge needs to be organized and disseminated in ahighly efficient and cost effective manner to minimize training time.Computers, and especially networked computers, offer an opportunity foremployers to move beyond the generic manual, electronic or paper.

For example, the multimedia capabilities of computers provide a uniqueavenue for providing information to users. When compared to thetraditional text-only environment, multimedia offers a richer learningenvironment in which to communicate complex ideas. Using audio, forexample, information can be provided using speech or music. Similarly,video can be used to show re-enactments of complex software procedures.Exploiting the capabilities of networked computers, video and audio canbe used to show real-time satellite data downloaded from the Internet totest skill acquisition with live data, or provide synchronous distancelearning that incorporates the traditional, and still-valuable,instructor-led classroom.

Depending on the intended audience, the appropriate IT platform forpresenting information may also vary. Different situations/audiences maydesire information presented over traditional platforms (i.e.,desktop/portable computers connected to a network), wireless delivery todevices (i.e., personal digital assistants, cell phones, etc.), andother devices (i.e., WebTV, set-top boxes, etc.). Other considerationsmay also factor into information delivery. For example, the quantity ofdata may be adjusted according to bandwidth limitations inherent in theconnection method used, including modems, T1 lines, cable modems,satellite connections, etc.

Further, learning styles can be taken into consideration in howinformation is presented. Some individuals learn best by listening,others by watching, still others by doing. Some learn best by having toassimilate ideas and re-express them to others by speaking or writing,and some learn best with a mix of styles, depending on the subject orskill or idea that the individual seeks to grasp. Visual, verbal,auditory, or mathematical expressions all have their place in learning.One strength of the current technology is its ability to employdifferent styles with the same content. For example, some web sitesoffer sound effects with audio files and the option for users to disablethem, or the selection between frames or non-frames in a web pagelayout. Every time an individual selects one over the other he/sheexercises a cognitive preference.

As the presence and use of technology matures, workers have becomeincreasingly comfortable with technology. Workers are becomingaccustomed to incorporating technology in their entertainment,communications, and educational environments. Already, workers usingCD-ROM or computer-based training (CBT) systems to enhance job skillsare demanding more from these learning environments. Companies caneasily retain and create excellent employees by offering not only thelatest training content, but a training approach that can be customizedto the distinctive way in which each employee learns.

By properly exploiting the abilities of computers, employers andeducators could customize the selection, sequencing and presentation foreach individual based on their knowledge, needs and methods of learning.While some systems are being developed to meet this need, these systemscurrently require a great deal of expertise to implement a useableproduct.

In view of the above, there exists a need for a method and system forseparating information content from presentation format thereby allowingfor the customization of the presentation on the basis of individual orgroup profiles (language, familiarity with topic, and/or learningstyle), organizational needs and technical factors (hardware andbandwidth availability, handicapped accessibility), and/or legal orregulatory requirements. Additionally, there exists the need for amethod and system that allows a corporation or group to transform,without substantial expertise, existing manuals into computerizedlearning environments that are customizable based on the currentknowledge, needs and learning style(s) of individuals and groups ofindividuals.

For both IT specialists and IT users, today's training material istomorrow's reference material. Consequently, a further need exists for asystem and method that uses identical information as both training andreference material. Training and reference material should be rooted inthe content, not the presentation format, of an organization's knowledgebase. Although material may be initially presented in a format suitablefor training, the system and method ensures that the same material isavailable, and appropriately recast, for later reference. As a result,the system and method yield organization-wide content with user-specificpresentation.

SUMMARY OF THE INVENTION

The current invention provides a custom electronic learning system andmethod. In particular, the current invention creates a custom learningobject based on a set of user characteristics and one or more knowledgeobjects.

A first aspect of the invention provides a custom electronic learningsystem, comprising: a characteristic system for defining a set of usercharacteristics for a user; a conversion system for converting aknowledge object into a set of knowledge atoms; and a compiler systemfor generating a learning object based on the set of usercharacteristics and the set of knowledge atoms.

A second aspect of the invention provides a method of generating acustom electronic learning object, comprising: receiving a knowledgeobject; defining a set of user characteristics for a user; creating aset of knowledge atoms based on the knowledge object, wherein eachknowledge atom includes: learning data based on a portion of informationin the knowledge object; and a type attribute describing the learningdata; and generating the learning object based on the set of knowledgeatoms and the set of user characteristics.

A third aspect of the invention provides a system for generating acustom electronic learning object, comprising: a set of usercharacteristics for a user including a learning style; a set ofknowledge atoms, wherein each knowledge atom includes learning data; anda compiler system for generating the learning object, the compilersystem including a set of containers, wherein each container defines anoutput format; and wherein the learning object comprises each knowledgeatom mapped into at least one container based on at least the learningstyle.

The exemplary aspects of the present invention are designed to solve theproblems herein described and other problems not discussed, which arediscoverable by a skilled artisan.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features of this invention will be more readilyunderstood from the following detailed description of the variousaspects of the invention taken in conjunction with the accompanyingdrawings in which:

FIG. 1 depicts a custom electronic learning system according to oneaspect of the invention;

FIG. 2 depicts an exemplary implementation of the custom system shown inFIG. 1;

FIG. 3 depicts an exemplary implementation of the compiler system shownin FIGS. 1 and 2;

FIG. 4 depicts a method of converting a knowledge object to a set ofknowledge atoms according to one aspect of the invention; and

FIG. 5 depicts a method of defining user characteristics according toone aspect of the invention.

It is noted that the drawings of the invention are not to scale. Thedrawings are intended to depict only typical aspects of the invention,and therefore should not be considered as limiting the scope of theinvention. In the drawings, like numbering represents like elementsbetween the drawings.

DETAILED DESCRIPTION OF THE INVENTION

The current invention provides a custom electronic learning system. Thesystem presents a set of learning information to users that is specificto the user characteristics of individual users. In particular, thesystem can alter the sequence, selection and presentation of learninginformation to meet the specific characteristics of individual learners.Thus, visual learners can receive a set of learning information in oneformat (using, e.g., diagrams, colors, etc.), while textual learners canreceive the learning information in a straightforward textual format.Moreover, the learning information can be presented at different levelsof detail, depending on the job tasks of the learner. For instance, atechnician may need more details than a marketing person, so the systemwould deliver fewer details to the marketing person. Finally, the systemcan also alter the learning information based on the learningenvironment (e.g., high speed internet versus, dial-up PDA).

To achieve this, the system first identifies the learningcharacteristics of a user (e.g., top down visual learner). The systemthen tailors learning information for the particular user within anorganization. As described below, learning information is firstconverted into knowledge objects comprising a format that can be easilyreconfigured into many different types of custom learning objects basedon the inputted user characteristics.

Turning to the figures, FIG. 1 shows a custom electronic learning system10 according to one aspect of the invention. System 10 includes acomputer 12 that generally comprises central processing unit (CPU) 14,memory 16, input/output (I/O) interface 18, bus 20, I/O devices 22 anddatabase 24. User 26 can communicate and operate computer 12 byinterfacing with one or more I/O devices 22, or by operating a userdevice 28 in communication with one or more I/O devices 22 eitherdirectly or using a network 30. Communications between user device 28,computer 12, and/or network 30 can be implemented using any method orcombination of methods, including, wireless, satellite, ethernet, fiberoptic, serial, parallel, etc. Network 30 can comprise any type ofnetwork, including, a private network, such as a one-to-one connection,an office-wide or company-wide network, a virtual private network (VPN),etc., a public network, such as a local area network (LAN), a wide areanetwork (WAN), a global network, the Internet, etc., or a combination ofpublic and private networks. While a single network 30 is shown, it isunderstood that different and/or multiple networks 30 can be used byuser 26.

Computer 12 can comprise an advanced mid-range multiprocessor-basedserver utilizing standard operating system software, which is designedto drive the operation of the particular hardware and which iscompatible with other system components and I/O controllers. CPU 14 maycomprise a single processing unit, multiple processing units capable ofparallel operation, or be distributed across one or more processingunits in one or more locations, e.g., on a client and server. Memory 16may comprise any known type of data storage and/or transmission media,including magnetic media, optical media, random access memory (RAM),read-only memory (ROM), a data cache, a data object, etc. Moreover,similar to CPU 14, memory 16 may reside at a single physical location,comprising one or more types of data storage, or be distributed across aplurality of physical systems in various forms.

I/O interface 18 may comprise any system for exchanging information withone or more I/O devices 22, including an I/O port (serial, parallel,ethernet, keyboard, mouse, etc.), a universal serial bus (USB) port,expansion bus, integrated drive electronics (IDE), etc. I/O devices 22may comprise any known type of input/output device capable ofcommunicating with I/O interface 18 with or without additional devices(i.e., expansion cards), including a network system, a modem, speakers,a monitor (cathode-ray tube (CRT), liquid-crystal display (LCD), etc.),hand-held device, keyboard, mouse, voice recognition system, speechoutput system, scanner, printer, facsimile, pager, storage devices, etc.Bus 20 provides a communication link between each of the components incomputer 12 and likewise may comprise any known type of transmissionlink, including electrical, optical, wireless, etc. In addition,although not shown, additional components, such as cache memory,communication systems, system software, etc., may be incorporated intocomputer 12.

Database 24 may provide storage for information necessary to carry outthe present invention as described in more detail below. As such,database 24 may include one or more storage devices, such as a magneticdisk drive or an optical disk drive. Further, database 24 can includedata distributed across, for example, a LAN, WAN or a storage areanetwork (SAN) (not shown). Database 24 may also be configured in such away that one of ordinary skill in the art may interpret it to includeone or more storage devices.

It is understood that although not shown, user device 28 typicallycontains components (e.g., CPU, memory, etc.) similar to computer 12.Such components have not been separately depicted and described forbrevity purposes. User device 28 can comprise any type of device capableof accepting input, providing output, and communicating with anotherdevice. For example, user device 28 can be a mobile phone, a handheldcomputer, a personal digital assistant, a portable (e.g., laptop)computer, a desktop computer, a mainframe computer, etc.

Custom system 32 is shown stored in memory 16 as computer program code.Custom system 32 generates one or more custom electronic learningobjects. According to one aspect of the invention, custom system 32includes a characteristic system 34, a conversion system 36, and acompiler system 38 described in further detail below.

FIG. 2 provides a detailed view of custom system 32. As shown, customsystem 32 accepts one or more knowledge objects 40 and produces one ormore custom learning objects 42. User 26 interacts with custom system 32to affect the sequence, selection and presentation (i.e., appearance) ofcustom learning objects 42. Knowledge object 40 and custom learningobject 42 comprise any electronic representation of information. Forexample, knowledge object 40 or custom learning object 42 can comprisean electronic file that stores a word processing document, a web page, aspreadsheet, a presentation, an e-mail, a chart, an image, an audiofile, a video, etc.

Custom system 32 includes a conversion system 36 to receive knowledgeobject 40 and convert the knowledge object 40 into a set of knowledgeatoms 44. Each knowledge atom 44 represents an elementary piece ofinformation that was contained in knowledge object 40. For example, aknowledge object may comprise a user manual stored as a word processingdocument having knowledge atoms that may include a title, subheadings,written text, highlighted text, tips, footnotes, etc. Each knowledgeatom 44 stores information as learning data, and also includes a typeattribute that describes the learning data. For example, the learningdata can be the text of a “tip” that was contained in the wordprocessing document. Consequently, the type attribute would identify theknowledge atom as representing a “tip” and containing text. Further,knowledge atom 44 can include a level attribute that represents ameasure of detail of the learning data. Thus, a “tip” may be assigned ahighly detailed level attribute, while a “subheading” may be assigned alow level attribute.

Once obtained, knowledge atoms 44 that represent a knowledge object 40are stored in a tree structure or other similar structure to allow foreasy navigation. For example, custom system 32 can convert eachknowledge object 40 into a tree structure stored in extensible markuplanguage (XML). Thus, the document title may be at the top of the tree,followed by subheadings, text, footnotes, etc.

FIG. 4 depicts an exemplary method of converting a knowledge object to aset of knowledge atoms stored in a tree structure. In step SI, forexample, the knowledge object is split up into knowledge atoms. Thisstep analyzes the knowledge object to break up the information providedin the document into elementary parts. Each elementary part is assignedto a knowledge atom. In step S2, the knowledge atoms are stored in atree structure, or some other structure allowing for the efficientnavigation of the set of knowledge atoms. In step S3, information isstored in each knowledge atom, i.e., the learning data is assigned toeach knowledge atom (e.g., <title>=“USER MANUAL”). This may comprisecopying text into the knowledge atom, providing a pointer to a streamingvideo, etc. In step S4, a level of detail is determined for eachknowledge atom. This determination is made based on a semantic andpresentation analysis of the knowledge object. For example, in a wordprocessing document, the words and context are analyzed. Phrases in boldand/or a larger point size may be placed at a low level of detail, while“tips” or glossary definitions can be placed at a high level of detail.In step S5, a type attribute is determined for each knowledge atom. Forexample, a knowledge atom can represent a table of contents, glossary,paragraph, heading, etc., from a word processing document. In step S6,one or more handlers (described in more detail below with respect toFIG. 3) are assigned. In general, each handler performs the necessaryfunctions for formatting a knowledge atom in a particular manner. Forexample, a table of contents knowledge atom may include a handler forpresenting the learning data on a web page, and a second handler forpresenting the learning data in a word processing document.

Returning to FIG. 2, to enable the creation of a custom learning object42, user characteristics 46 for each user 26 or group of users shouldalso be defined. To achieve this, user 26 interacts with characteristicsystem 34 to define a set of user characteristics 46. Usercharacteristics 46 include any attribute or information that affects theefficient display and format of custom learning object 42. Usercharacteristics 46 can be selected by user 26, detected bycharacteristic system 34, and/or determined by characteristic system 34.For example, user 26 can select a learning style, or take a test todetermine the learning style. User characteristics 46 can includeattributes for groups of users (e.g., job type, user privileges, levelof detail, year in college, etc.), system attributes (e.g., bandwidth,screen dimension, user device, etc.), and user-specific attributes(e.g., experience, learning style, etc.). In addition, characteristicsystem 34 can provide user 26 with the ability to dynamically changesome or all of user characteristics 46.

FIG. 5 depicts an exemplary method of defining user characteristics 46for a user. In step S11, the particular user is identified. Based onthis identification, a set of default user characteristics are assignedto the user in step S12. For example, groups of users may be set up on anetwork, each group having a corresponding default set of usercharacteristics. Further, once a particular user has used the customlearning system, the user characteristics can be stored and retrievedfor later use. In step S13, the system characteristics for a user areobtained. A user may use the system from their office using a desktopcomputer linked by a high speed network, and then use the system whenout in the field using a personal data assistant (PDA). Thecommunication and display capabilities for each of these systems variesgreatly, necessitating that the custom learning object be modifiedaccordingly. In step S14, the user's learning style is determined. Whilea user style may have been previously assigned based on prior use, auser's learning style may vary according to the time of day, or theparticular method of using the system.

For first time users, the user can be allowed to select a particularlearning style, or a test can be provided to determine the learningstyle. Any type of test to identify a learning style can be implemented.As noted above, the results of such a test would map each user within anorganization to a set of user characteristics (e.g., top down, visuallearner, etc.). In an exemplary embodiment, there may exist 100different possible outcomes or sets of user characteristics in which auser might be classified. Each individual could then be identified bysuch a result. In step S15, the user is allowed to modify the usercharacteristics. This allows users to continually tune the customlearning system according to their current needs and based onperformance feedback while using the system.

For example, a user may be a technician searching for information on aparticular product. In this case, user characteristics may default toshowing a high level of detail because users in the technician usergroup generally desire a great deal of detail. However, if the user issearching only for a particular piece of data, a high level of detailcan prove cumbersome to navigate. Consequently, the user can dynamicallychange a level of detail user characteristic to view less detail (i.e.,zoom out) while navigating the information, and subsequently increasethe level of detail (i.e., zoom in) as the location of the desiredinformation is narrowed.

As noted, users can be allowed to dynamically change a level of detailof information to view, or zoom. This ability allows a user todynamically adjust the quantity of information based on any number offactors, including network performance, ease of navigating theinformation, a type of information display, etc. Further, a user canadjust content based on his/her knowledge of the information and/orrequired knowledge. Once a user adjusts the desired level of detail, thecurrent presentation of the information can be dynamically updated toreflect the new selection. For example, the table of contents may be theleast level of detail for a particular book input into the system.Adjusting the zoom for additional detail may provide an outline of eachchapter, zooming in further may provide summaries of the topics in theoutline, etc.

Returning to FIG. 2, the set of knowledge atoms 44 and usercharacteristics 46 are provided to compiler system 38 that generates oneor more custom learning objects 42 based on the above-described inputs.FIG. 3 depicts an exemplary implementation of compiler system 38. Asshown, compiler system 38 includes an engine 50, handlers 52, and acontainer manager 54. Engine 50 performs the initial processing ofknowledge atoms 44. For example, as discussed above, knowledge atoms 44can be stored in a tree structure and engine 50 would walk the treestructure to process knowledge atoms 44. Engine 50 determines how toproperly process each knowledge atom 44 based on one or more usercharacteristics 46. To perform additional processing of a knowledge atom44, engine 50 calls one or more handlers 52, which dictate the outputformat of the knowledge atom. Engine 50 determines whether to call aparticular handler 52, and if so which one, based on one or more usercharacteristics 46. For certain knowledge atoms 44, a handler 52 maycall one or more handlers 52 to perform processing for a portion ofknowledge atom 44.

For example, knowledge atom 44 can represent a “tip” that can be outputin various different formats, depending on the user characteristics.Knowledge atom 44 will be assigned a handler 52 that performs theprocessing to appropriately output the “tip,” e.g., as text, as an icon,as a popup, as highlighted text, as an audio file, etc. Engine 50 willselect an “icon” handler 52 when a learning style user characteristic 46is visual, an “audio file” handler 52 when a system attribute identifiesa cell phone as the user device, etc. In some cases, a handler 52 maynot be called at all for a particular knowledge atom 44 when a level ofdetail user characteristic 46 is set to filter out content at aparticular level of detail (e.g., a marketing person may not need to see“tips”).

Container manager 54 manages containers 58 on which each custom learningobject 42 is based. A container 58 defines an output format. Forexample, containers 58 can define a web page, a word processor document,an audio file, a streaming video, etc. Container manager 54 adds andremoves containers 58 from the one or more custom learning objects 42.

Each handler 52 includes the ability to incorporate the given knowledgeatom 44 into one or more containers 58. Initially, handler 52 requeststhat container manager 54 provide an appropriate container 58 for thegiven knowledge atom 44. Container manager 54 determines the appropriatecontainer 58 based on the one or more types of containers 58 associatedwith handler 52 and/or one or more user characteristics 46. Once handler52 receives a container 58, it uses an appropriate presentation sheet 56to incorporate the given knowledge atom 44 into container 58. Eachpresentation sheet 56 defines a mapping of a type of knowledge atom 44to a handler 52. Alternatively, a presentation sheet 56 can define amapping of a type of knowledge atom 44 to a type of container 58, oranother object used in rendering a knowledge atom 44 into theappropriate format.

For example, knowledge atom 44 may identify the table of contents for abook. Engine 50 calls the handler 52 for processing a table of contentsinto text based on a learning style user characteristic 46. Handler 52calls container manager 54 to receive a container 58. Container manager54 provides handler 52 with a web page file based on a system attributeuser characteristic 46 indicating that the user is operating a desktopcomputer. Handler 52 then uses a presentation sheet 56 that defines amapping of a table of contents to a web page. Presentation sheet 56 mayspecify that table of contents data is listed down the left side of aweb page, in a particular font type and size, using a particular color,hyperlinked to the corresponding data, etc. Based on a level of detailuser characteristic 46, handler 52 may incorporate chapter headings,chapter and subchapter headings, etc. into container 58. Thecorresponding text for a particular chapter may be mapped into container58 at a later time. When this is done, links between the table ofcontents entry and corresponding text can be included by containermanager 54.

Once engine 50 has completed navigating the set of knowledge atoms 44and all handlers 52 have completed processing knowledge atoms 44,container manager 54 provides the one or more custom learning objects 42to the user. The user may select a portion of a learning object 42 toview. In this case, a new or altered set of knowledge atoms 44 areprovided to engine 50 for processing, resulting in one or more newcustom learning objects 42. Alternatively, the user may modify one ormore user characteristics 46. In this case, engine 50 may only performpartial processing on knowledge atoms 44 to implement the resultingmodifications to custom learning object(s) 42.

The foregoing description of various aspects of the invention has beenpresented for purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdisclosed, and obviously, many modifications and variations arepossible. Such modifications and variations that may be apparent to aperson skilled in the art are intended to be included within the scopeof the invention as defined by the accompanying claims.

1-20. (canceled)
 21. A custom electronic learning system, comprising: asystem for converting a knowledge object into a set of knowledge atoms,each knowledge atom representing an elementary piece of information thatis contained in the knowledge object; and a system for generating anelectronic learning object for presentation to a user based on a set ofuser characteristics for the user and the set of knowledge atoms. 22.The system of claim 21, the knowledge object comprising at least one of:a word processing document, a web page, a spreadsheet, a presentation,an e-mail, a chart, an image, an audio file, or a video.
 23. The systemof claim 21, each knowledge atom including: learning data; and a typeattribute describing the learning data.
 24. The system of claim 23, eachknowledge atom further including a level attribute representing a levelof detail for the learning data.
 25. The system of claim 21, wherein thesystem for converting generates a tree structure based on the knowledgeobject, the tree structure including the set of knowledge atoms.
 26. Thesystem of claim 21, further comprising a system for obtaining the set ofuser characteristics.
 27. The system of claim 26, the system forobtaining defining at least one of the set of user characteristics basedon a test taken by the user.
 28. The system of claim 26, the system forobtaining defining at least one of the set of user characteristics basedon a group for the user.
 29. The system of claim 21, further comprisinga system for presenting the electronic learning object to the user. 30.The system of claim 29, the set of user characteristics including alevel of detail, the system for presenting including a system fordynamically changing the level of detail.
 31. A method of generating acustom electronic learning object, the method comprising: converting aknowledge object into a set of knowledge atoms, each knowledge atomrepresenting an elementary piece of information that is contained in theknowledge object; and generating the custom electronic learning objectfor presentation to a user based on a set of user characteristics forthe user and the set of knowledge atoms.
 32. The method of claim 31,further comprising obtaining the set of user characteristics.
 33. Themethod of claim 32, the obtaining including defining at least one of theset of user characteristics based on a test taken by the user.
 34. Themethod of claim 32, the obtaining including defining at least one of theset of user characteristics based on a group for the user.
 35. Themethod of claim 31, further comprising presenting the electroniclearning object to the user.
 36. A computer program comprising programcode stored on a computer-readable medium, which when executed, enablesa computer system to implement a method of generating a customelectronic learning object, the method comprising: converting aknowledge object into a set of knowledge atoms, each knowledge atomrepresenting an elementary piece of information that is contained in theknowledge object; and generating the custom electronic learning objectfor presentation to a user based on a set of user characteristics forthe user and the set of knowledge atoms.
 37. The computer program ofclaim 36, the knowledge object comprising at least one of: a wordprocessing document, a web page, a spreadsheet, a presentation, ane-mail, a chart, an image, an audio file, or a video.
 38. The computerprogram of claim 36, the custom electronic learning object including atleast one of: an audio file or a streaming video.
 39. The computerprogram of claim 36, the method further comprising obtaining the set ofuser characteristics.
 40. The computer program of claim 36, the methodfurther comprising presenting the electronic learning object to theuser.